Software development often involves runtime performance monitoring or testing to determine whether improvements can be or should be made to software. Execution behaviors or performance characteristics are often exhibited differently when applications are fully executed than when the applications are stepped through line-by-line during a programming phase. To enable monitoring software segments (e.g., functions, processes, etc.) during runtime, performance monitoring and/or testing often involves using a trace data collector to collect trace data associated with real-time execution of processes or functions. A trace data collector is a process that typically runs in parallel with an application to be monitored and collects the trace data corresponding to executed processes or functions of the application. Trace data includes information associated with execution behavior or performance of the processes or functions, which can be stored in a data structure or file and can be subsequently analyzed by a programmer and/or an analyzer application to determine whether software changes can or should be made to the application or to portions of the application.